Лабораторная работа №6

Артём Дмитриевич Петлин

Российский университет дружбы народов

2025-10-10

Информация

Докладчик

Цель работы

Цель работы

Получить навыки управления процессами операционной системы.

Задание

Задание

  1. Продемонстрируйте навыки управления заданиями операционной системы (см. раздел 6.4.1).
  2. Продемонстрируйте навыки управления процессами операционной системы (см. раздел 6.4.2).
  3. Выполните задания для самостоятельной работы (см. раздел 6.5)

Теоретическое введение

Теоретическое введение

Под процессом в операционной системе понимается абстракция, описывающая вы- полняющуюся программу. Информацию о выполняющихся в операционной системе типа Unix процессах можно получить, например, с помощью команд ps, top, htop.

Выполнение лабораторной работы

Ход работы

Получаем полномочия администратора. Запускаем несколько фоновых процессов и один длительный процесс на переднем плане. Введите Ctrl + z , чтобы остановить процесс.

Рисунок 1: su -

Ход работы

Возобновляем выполнение приостановленного задания в фоновом режиме и наблюдаем изменение его статуса. Перемещаем одно из заданий на передний план. Завершаем выполнение задания на переднем плане с помощью комбинации клавиш и проверяем изменения в списке заданий.

Рисунок 2: bg | fg

Ход работы

Рисунок 3: ctrl + z

Последовательно завершаем оставшиеся задания.

Ход работы

Рисунок 4: &

На втором терминале запускаем фоновый процесс от имени обычного пользователя. Закрываем второй терминал. На другом терминале проверяем, что процесс продолжает выполняться, с помощью системного монитора.

Ход работы

Завершаем оставшийся процесс через системный монитор.

Рисунок 5: top
Рисунок 6: top

Ход работы

Получаем полномочия администратора. Запускаем несколько фоновых процессов. Просматриваем информацию о запущенных процессах, фильтруя нужные нам процессы.

Рисунок 7: su -

Ход работы

Рисунок 8: renice

Изменяем приоритет одного из процессов, используя его идентификатор.

Ход работы

Рисунок 9: ps fax | grep -B5 dd

Изучаем иерархию процессов, просматривая связи между родительскими и дочерними процессами.

Ход работы

Рисунок 10: kill -9

Завершаем родительский процесс, что приводит к автоматическому завершению всех связанных дочерних процессов.

Ход работы

Запускаем три фоновых процесса. Повышаем приоритет одного из процессов, устанавливая отрицательное значение. Дополнительно изменяем приоритет того же процесса, устанавливая другое значение, и анализируем разницу в приоритетах.

Рисунок 11: renice

Ход работы

Завершаем все запущенные процессы.

Рисунок 12: killa -9

Ход работы

Рисунок 13: yes

Запускаем фоновый процесс с перенаправлением вывода. Запускаем процесс на переднем плане с перенаправлением вывода, приостанавливаем его, затем возобновляем и завершаем.

Ход работы

Запускаем процесс на переднем плане без перенаправления вывода, приостанавливаем, возобновляем и завершаем его.

Рисунок 14: ctrl + z
Рисунок 15: ctrl + c

Ход работы

Рисунок 16: yes

Проверяем состояния всех заданий. Переводим фоновый процесс на передний план и останавливаем его.

Ход работы

Рисунок 17: yes

Переводим процесс с перенаправлением вывода в фоновый режим. Проверяем состояния заданий, обращая внимание на процессы, выполняющиеся в фоновом режиме.

Ход работы

Рисунок 18: nohup

Запускаем процесс таким образом, чтобы он продолжал работу после закрытия терминала.

Ход работы

Рисунок 19: ps -A

Закрываем и заново открываем терминал, проверяя продолжение работы процесса. Изучаем информацию о запущенных процессах с помощью системного монитора.

Ход работы

Запускаем три дополнительных фоновых процесса с перенаправлением вывода. Завершаем два процесса разными способами: по идентификатору процесса и по идентификатору задания.

Рисунок 20: yes

Ход работы

Рисунок 21: kill -1

Отправляем сигнал завершения процессу, запущенному с защитой от разрыва связи, и обычному процессу, сравнивая их поведение.

Ход работы

Запускаем несколько дополнительных фоновых процессов. Завершаем все процессы одновременно с помощью команды группового завершения.

Рисунок 22: killall

Ход работы

Рисунок 23: yes

Запускаем два процесса с разными приоритетами и сравниваем их абсолютные и относительные приоритеты.

Ход работы

Рисунок 24: renice

Выравниваем приоритеты двух процессов, изменяя значение приоритета для одного из них.

Выводы

Выводы

Мы получили навыки управления процессами операционной системы.

Список литературы

Список литературы

  1. Поттеринг Л. Systemd для администраторов: цикл статей. — 2010. — URL: http: //wiki.opennet.ru/Systemd.
  2. Neil N. J. Learning CentOS: A Beginners Guide to Learning Linux. — CreateSpace Inde- pendent Publishing Platform, 2016.
  3. Systemd. — 2022. — URL: https://wiki.archlinux.org/title/Systemd.